查看原文
其他

Spring Boot 2.4.0 正式发布!全新的配置处理机制,拥抱云原生!

DD编辑部 程序猿DD 2021-05-26

点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

2020年11月12日,Spring官方发布了Spring Boot 2.4.0 GA的公告。在这个版本中增加了大量的新特性和改进,下面我们一起看看在这个重要版本中都有哪些值得关注的内容!

更新内容

1. 版本命名的更改,从2.4开始,版本名将去除RELEASE后缀,所以这次的版本不是2.4.0.RELEASE,而是2.4.0


2. 改进了 application.properties 和 application.yml 文件的处理方式。如果您只有一个简单的 application.properties 或 application.yml 文件,那么您的升级应该是无缝的。但是,如果您有更复杂的设置,那么如果您想使用新特性,则可能需要进行一些更改。更细节的内容可参考:


https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-Config-Data-Migration-Guide


3. 新的 spring.config.import 属性可用于导入 Kubernetes 中常用的配置树。


4. 现在可以使用一个新的startup端点来显示有关应用程序启动的信息。这个端点可以帮助您识别比预期启动时间更长的 bean。

5. Docker/Buildpack的支持,可以更方便的构建镜像
6. 完美支持Java 15
7. 相关依赖的升级
  • Spring AMQP 2.3 
  • Spring Batch 4.3 
  • Spring Data 2020.0
  • Spring Framework 5.3
  • Spring HATEOAS 1.2
  • Spring Integration 5.4 
  • Spring Kafka 2.6 
  • Spring Retry 1.3 
  • Spring Security 5.4
  • Spring Session 2020.0

8. 嵌入式数据库的检测逻辑改进,只有当数据库在内存中时才视为嵌入式数据库。所以,如果当你对 H2、 HSQL 和 Derby 采用文件形式持久化的时候将不会自动初始化


9. Logback配置属性的更改

  • logging.pattern.rolling-file-name → logging.logback.rollingpolicy.file-name-pattern

  • logging.file.clean-history-on-start → logging.logback.rollingpolicy.clean-history-on-start

  • logging.file.max-size → logging.logback.rollingpolicy.max-file-size

  • logging.file.total-size-cap → logging.logback.rollingpolicy.total-size-cap

  • logging.file.max-history → logging.logback.rollingpolicy.max-history


10. 默认情况下,不在 HTTP traces中包含 Cookie 请求头和 set-Cookie 响应头。如果从 Spring Boot 2.3升级的话,需要将 management.trace.http.include 配置设置为 cookies、 errors、 request-headers、 response-headers。


11. Undertow 在转发请求时将保留原始请求 URL。这个版本覆盖了 Undertow 的默认设置,以符合 Servlet 规范。当然,你也可以将属性 server.undertow.preserve-path-on-forward 设置为 true,来恢复 Undertow 的默认行为。


12. 使用ES的用户需要注意,这个版本中不再自动配置低级的 Elasticsearch RestClient,但 RestHighLevelClient 仍然是可以自动配置的。建议用户不应该使用低级的客户端,应该使用更高级的客户端的,所以这样的改动应该不会影响太多用户。


13. 如果你正在使用 Flyway 5,请确保在升级到 Spring Boot 2.4之前升级到 Flyway 6,因为 Flyway 只对一个功能版本进行模式升级。


参考资料
- https://spring.io/blog/2020/11/12/spring-boot-2-4-0-available-now


DD自研的沪牌代拍业务,点击直达


往期推荐

10道棘手的Java面试题,看看你能答对几个?

如果MySQL磁盘满了,会发生什么?

Mysql 都会遭受哪些方面的攻击?

你了解 Java 的 jstat 命令吗?

Git 提交代码之后的几种后悔药

为什么大多数IOC容器使用ApplicationContext,而不用BeanFactory


扫一扫,关注我

一起学习,一起进步

每周赠书,福利不断


深度内容

推荐加入



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存